The invention relates to a method for delivering messages in a social network that automatically increases a signal-to-noise ratio correlated to user interests, and to a system as well as to an architecture to implement such a method.
The invention field is the telecommunication area and, more particularly, message routing and data processing that adjust its internal parameters, such as its routing tables, throughput flow, . . . , in response to the content, metadata of transiting messages and user feedbacks. The invention can also be applied to recommendation systems.
The present invention relates to information processing for large or massive information networks, such as the Internet and mobile networks. These networks have considerably eased interpersonal communication and exchange of information entities between users. Nowadays, individuals access and receive a huge amount of information generated by other users, leading to an information overload problem.
The messages that are involved here flow through electronic messages, whether these are electronic mail, GSM short messages, messages posted on Internet websites, blogs or forums, instant messages and other means of electronic communication. Messages are explicitly addressed to recipients, as is the case with electronic mail, instant messaging and GSM text and multimedia messages, or published and made visible to a community or to everybody.
A new form of communication in computer networking emerged with the rise of social networks. With social networks such as “FACEBOOK.COM”, “LINKEDIN.COM”, “TWITTER.COM” or “FRIENDFEED.COM”, users can send messages that are delivered to all the other users reciprocally or univocally—depending on the network—identified as their “friends” or “connections”. The “friendship” relations constitute a “social graph” that connects users of social networks. The flow of messages distributed in a social graph is usually called the “feed”, the “live feed”, the “timeline” or the “social timeline” (hereafter “live feed”) of the user or of the user's friends. A method to generate such a sequence is disclosed in the patent application published as WO 2007/076150.
On social networks, a user typically performs actions, such as installing an application, annotating a picture or a video, leaving a comment, changing information on their profile or their online résumé, or any other operation. These actions are described as an automatically generated message in plain English or in another natural language. The message is then enqueued in the “live feed” of the user, i.e. memorized in a list of messages, and made visible to their connected “friends”. A user can also typically post a free form message that answers a question such as “What are you doing?” or “What are you working on?” or “What's on your mind?” or any other similar question, and this message is also enqueued in their “live feed”. Sometimes, the message is constrained and must start by the name or pseudo of the user. Sometimes, the message must include a verb the user can select in a list of pre-defined verbs such as in “PLURK.COM” network.
Such “live feeds” aggregate a huge amount of messages and information, and it is difficult for individual users to read all the messages emanating from their “friends” or “connections”. Besides, most messages are of little interest to individual users, because they relate to actions they have no interest in, or because the author of the message mentions something that does not interest all the recipients. Messages are often publicly available, and yet, the total amount of messages is such that it is difficult for users to access messages that may interest them from people outside their circle of “friends”.
Then, the general problem is how to increase the signal-to-noise ratio of messages received by each user communicating in an open network, where the signal-to-noise ratio perceived by each user is correlated to the density of “interesting” messages a user can find in view of the received messages (such as mentioned topics, authors, mentioned users, . . . ), even if the user interests evolve over time.
The signal-to-noise ratio, when defined as the ratio of interesting information or messages (Nsignal) by uninteresting, unwanted or superfluous information or messages (Nnoise), can be increased by increasing Nsignal and/or decreasing Nnoise.
A solution to improve the signal-to-noise ratio by is to classify messages and to designate spaces or channels based on a topic or a common interest for messages to be published and exchanged. Users of systems based on this classification solution only read and write in channels that cover their interests. Systems based on this idea include instant messaging rooms or channels, including those created within social networks such as “groups”, “rooms”, web-based forums and “newsgroups” where topics are organized hierarchically. Such a solution increases the ratio by increasing Nsignal and decreasing Nnoise in designated spaces or channels.
All the embodiments of such delivery systems based on forums have several important limitations. Users must select the appropriate forum or forums to post their messages, which is no easy task since forums do not exactly match the users interests and topics of messages, as disclosed in Human Factors in Computing Systems, CHI '91 Conference Proceedings, pages 63-70, ACM Press, 1991. Besides, users must manually subscribe or visit regularly the most appropriate forums which they must manually select. Eventually, users only visit the forums for the few topics they are passionate about to avoid the information overload generated by messages coming from too many forums.
Another solution to improve the signal-to-noise ratio is to tag or annotate messages with metadata, which can be a keyword, a Boolean value or any other information. Users explicitly associate metadata to each message, and the metadata is used to filter the incoming messages for other users and to search for interesting messages. Such a solution increases the ratio by decreasing Nnoise by filtering unwanted messages, and by increasing Nsignal by allowing users to search for interesting messages. Systems based on this solution include collaborative spam filtering systems such as VIPUL'S RAZOR, rating systems, tagging systems, and collaborative filtering systems such as TAPESTRY, cf. Communications of the ACM, 35:61-70, 1992. Several users also annotate free form messages with conventional syntaxes grouped under the name of “microformats” and “nanoformats”, as can be observed on social networks such as TWITTER.COM.
In all the embodiments of such annotation-based systems, delivery systems based on annotations have three important limitations. Messages must be manually annotated, which requires an important human effort and time, and this can only be applied in a situation where a small proportion of users who are ready to spend the time to annotate messages can do so to the benefit of the other users. This requires that messages are distributed to many users in such a way that each message will be annotated by at least one user. Secondly, messages must be annotated before they are distributed to users, and therefore annotation by some users to the benefit of other users is not suitable to situations where messages are delivered at once and in real-time to all recipients, as is the case with instant messaging. Finally, annotation is limited by the variety of vocabulary and of conceptualization among users.
Another solution to improve the signal-to-noise ratio is to provide simple rules to filter messages. Such a solution increases the ratio by decreasing Nnoise by filtering unwanted messages based on rules. For example, a social network such as FACEBOOK.COM allows its users to select the relative amount of messages based on their nature. A user can decide to receive more “group” messages than “picture” messages, or only “wall” messages.
Document of patent WO 9307566 describes a similar system where users can specify routing and selection criteria for incoming messages, and remotely update these criteria.
Filtering and delivery systems based on user profiles or user-defined criteria such as the system described in application WO 2009/065052, are a subset of rule-based filtering and delivery systems.
In most of their embodiments, rule-based filtering and delivery systems require that users manually define rules or parameters of the rules or criteria. Some rule-based filtering systems can suggest rules based on “over the shoulder” observations of the user's behavior, but those require a feedback from the user that may be difficult to obtain in a delivery system. Some rule-based systems such as the one described in application WO 2009/065052 can automatically improve the filtering and the targeting of messages by updating the rules (or the user profile) from explicit user actions such as clicks on advertisement URLs.
In all their embodiments, delivery systems using rule-based filtering have two important limitations. Rules are static until updated or validated by explicit user actions. Besides, efficient rules are difficult to design in a dynamic context, when little information about messages can be known in advance. For example, manually defined static rules based on message content or metadata would inefficiently filter messages in a multicast or broadcast communication system or when messages are coming from unknown users. Indeed, rules of a rule-based filtering system must explicitly or implicitly cover all possible messages.
Another solution to improve the signal-to-noise ratio in a delivery system is to use user feedback and aggregate it with other users feedbacks. Such a solution increases the ratio by increasing Nsignal by delivering recommended messages. This is used in adaptive recommendation systems such as the one described in U.S. Pat. No. 7,013,238 or the one on websites such as AMAZON.COM.
The recommendation systems are based on a set of information entities that can be recommended (products sold on a given website or websites that can be visited). Users select items in this set, for example by purchasing a product, visiting a web page or any other action, and the recommendation system establishes a profile for each user which is then compared with the profiles of other users. Comparison and aggregation of the profiles allow the recommendation system to recommend items to users.
U.S. Pat. No. 7,269,590 teaches the ability of a social network user to edit their basic profile by modifying the user-defined criteria such as, but not limited to age, gender, and interests. This user modification capability affects the social timeline, which is directly dependent on the user defined criteria.
In all the embodiments of recommendation systems, delivery systems using adaptive recommendation systems have two significant limitations. For recommendations to make sense, items that are promoted or recommended must receive a significant number of selections performed by users. As a consequence, the set of items being delivered must be significantly smaller than the number of selections performed by users. In most cases, this set grows slowly, and those systems cannot be applied to a flow of short-lived messages. Besides, like annotation, recommendation requires that few users perform selections, for example by buying a product or visiting a web page, before the items can be recommended to other users. As a consequence, recommendation systems cannot be applied to individual messages in the context of instant messaging where messages are received by all recipients synchronously.
Another solution to improve the signal-to-noise ratio in a delivery system is the use of user feedback that is aggregated at a group level. This is typically what is done in adaptive collaborative filtering systems such as the one described in U.S. Pat. No. 5,867,799. In all their embodiments, delivery systems using adaptive collaborative filtering have two significant limitations. First, users must belong to a group or “community”, and this membership must be initially declared. This limitation is shared with forum-based delivery systems, as described above. Second, for the filtering to work, a sufficient number of users in each group must provide feedback for each distributed messages. This limitation is shared with annotation-based delivery systems, as described above.
Neural network-based routing U.S. Pat. No. 5,577,028 describes an adaptive routing system for use in a multimedia integrated network. Common aspect with the current invention includes the realization to adaptively route messages/information according to some criteria. However the goal sought and the method are very different.
The technique described in U.S. Pat. No. 5,577,028 seeks to optimally distribute packets of information based upon some criteria. This involves computing some parameters so that the system behaves optimally. The current invention does not seek to deliver packets of information in an optimal fashion, as along an optimal route, but aims to deliver messages so that the signal-to-noise ratio perceived by users receiving the messages is increased.
Moreover one of the specificities of the invention described in said patent is the use of neural networks in the routing nodes. The current invention does not depend on the use of neural networks in routing nodes.
Another solution to improve the signal-to-noise ratio is the individual manual redistribution of messages. Such a solution increases the ratio by increasing Nsignal by delivering more interesting messages. Users decide to resend a message that they like to other users. This typically happens in electronic mail (forwarding) and on social networks such as TWITTER.COM (“retweeting”). However this method is far from being optimal. Manual redistribution has three significant limitations. First, it increases the amount of traffic. Secondly, it usually generates more noise, especially when messages are received several times. This happens in social networks where users cannot easily specify the set of recipients of the redistributed messages and broadcast the message to all their “friends”, and in any situation where users incorrectly believe that the recipients might be interested in the re-distributed message, as can be observed in electronic mail systems (cf chain letters). Finally, it is slow, as it requires human effort. As a consequence, when information is delivered, it may be outdated.
Systems that seek to optimally distribute packets of information have the following limitations. Determining the correct values of the parameters needed to perform optimal delivery is very time and resource consuming. Moreover, the function to be optimized cannot always be formulated in such a way that is it usable.